home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-08-10 | 17.3 KB | 583 lines | [TEXT/MPS ] |
- (*
- File: Memory.mod
-
- Contains: Memory Manager Interfaces.
-
- Version: Technology: System 7.5
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs.applelink.apple.com
- AppleLink: APPLE.BUGS
-
- *)
-
- (*$IF UNDEFINED OLDROUTINENAMES*)
- (*$SET OLDROUTINENAMES FALSE*)
- (*$END*)
- (*$IF UNDEFINED SystemSevenFiveOrLater *)
- (*$SET SystemSevenFiveOrLater FALSE*)
- (*$END*)
- (*$IF UNDEFINED SystemSevenOrLater *)
- (*$IF GENERATINGCFM *)
- (*$SET SystemSevenOrLater TRUE*)
- (*$ELSE*)
- (*$SET SystemSevenOrLater SystemSevenFiveOrLater*)
- (*$END*)
- (*$END*)
- (*$IF UNDEFINED SystemSixOrLater *)
- (*$SET SystemSixOrLater SystemSevenOrLater*)
- (*$END*)
- (*$TAGS-*)
- (*$CALLING PASCAL*)
- MODULE Memory;
-
- IMPORT SYSTEM, Types;
-
- (* $PUSH*)
- (* $ALIGN MAC68K*)
- (* $LibExport+*)
-
- CONST
- maxSize* = $800000; (*Max data block size is 8 megabytes*)
- defaultPhysicalEntryCount* = 8;
- (* values returned from the GetPageState function *)
- kPageInMemory* = 0;
- kPageOnDisk* = 1;
- kNotPaged* = 2;
-
- (* masks for Zone->heapType field *)
- k32BitHeap* = 1; (* valid in all Memory Managers *)
- kNewStyleHeap* = 2; (* true if new Heap Manager is present *)
- kNewDebugHeap* = 4; (* true if new Heap Manager is running in debug mode on this heap *)
-
- (* size of a block in bytes *)
-
- TYPE
- Size* = LONGINT;
-
- GrowZoneProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (cbNeeded: Size): LONGINT;
- PurgeProcPtr* = (*ΔΔ Types.ProcPtr;*) PROCEDURE (blockToPurge: Types.Handle);
- (*
- UserFnProcPtr uses register based parameters on the 68k and cannot
- be written in or called from a high-level language without the help of
- mixed mode or assembly glue.
-
- In*:
- => *parameter A0.L
- *)
- UserFnProcPtr* = Types.Register68kProcPtr; (* register PROCEDURE UserFn*(parameter: (*ΔΔUNIVΔΔ*) Types.Ptr); *)
- GrowZoneUPP* = Types.UniversalProcPtr;
- PurgeUPP* = Types.UniversalProcPtr;
- UserFnUPP* = Types.UniversalProcPtr;
-
- THz* = POINTER TO Zone;
-
- Zone* = RECORD
- bkLim*: Types.Ptr;
- purgePtr*: Types.Ptr;
- hFstFree*: Types.Ptr;
- zcbFree*: LONGINT;
- gzProc*: GrowZoneUPP;
- moreMast*: INTEGER;
- flags*: INTEGER;
- cntRel*: INTEGER;
- maxRel*: INTEGER;
- cntNRel*: INTEGER;
- heapType*: Types.Byte; (*ΔΔ SInt8 *)
- unused*: Types.Byte; (*ΔΔ SInt8 *)
- cntEmpty*: INTEGER;
- cntHandles*: INTEGER;
- minCBFree*: LONGINT;
- purgeProc*: PurgeUPP;
- sparePtr*: Types.Ptr;
- allocPtr*: Types.Ptr;
- heapData*: INTEGER;
- END;
-
- MemoryBlock* = RECORD
- address*: Types.Ptr;
- count*: LONGINT;
- END;
-
- LogicalToPhysicalTable* = RECORD
- logical*: MemoryBlock;
- physical*: ARRAY (*ΔΔ[0..*)defaultPhysicalEntryCount(*ΔΔ -1]ΔΔ*) OF MemoryBlock;
- END;
-
- PageState* = INTEGER;
-
- StatusRegisterContents* = INTEGER;
-
- CONST
- uppGrowZoneProcInfo* = $000000F0; (* PROCEDURE (4 byte param): 4 byte result; *)
- uppPurgeProcInfo* = $000000C0; (* PROCEDURE (4 byte param); *)
- uppUserFnProcInfo* = $00009802; (* Register PROCEDURE (4 bytes in A0); *)
-
- PROCEDURE NewGrowZoneProc*(userRoutine: GrowZoneProcPtr): GrowZoneUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewPurgeProc*(userRoutine: PurgeProcPtr): PurgeUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE NewUserFnProc*(userRoutine: UserFnProcPtr): UserFnUPP;
- (*$IF NOT GENERATINGCFM *)
- INLINE PASCAL $2E9F;
- (*$END*)
-
- PROCEDURE CallGrowZoneProc*(cbNeeded: Size; userRoutine: GrowZoneUPP): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallPurgeProc*(blockToPurge: Types.Handle; userRoutine: PurgeUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $4E90;
- (*$END*)
-
- PROCEDURE CallUserFnProc*(parameter: (*ΔΔUNIVΔΔ*) Types.Ptr; userRoutine: UserFnUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL ; (*••*)
- (*To be implemented*: Glue to move parameters into registers.*)
- (*$END*)
- PROCEDURE GetApplLimit*(): Types.Ptr;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $2EB8, $0130; (* MOVE.l $0130,(SP) *)
- (*$END*)
-
- PROCEDURE SystemZone*(): THz;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $2EB8, $02A6; (* MOVE.l $02A6,(SP) *)
- (*$END*)
-
- PROCEDURE ApplicationZone*(): THz;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $2EB8, $02AA; (* MOVE.l $02AA,(SP) *)
- (*$END*)
-
- PROCEDURE GZSaveHnd*(): Types.Handle;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $2EB8, $0328; (* MOVE.l $0328,(SP) *)
- (*$END*)
-
- PROCEDURE TopMem*(): Types.Ptr;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $2EB8, $0108; (* MOVE.l $0108,(SP) *)
- (*$END*)
-
- PROCEDURE MemError*(): Types.OSErr;
- (*$IF NOT CFMSYSTEMCALLS*)
- INLINE PASCAL $3EB8, $0220; (* MOVE.w $0220,(SP) *)
- (*$END*)
-
- PROCEDURE GetZone*(): THz;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A11A, $2E88;
- (*$END*)
- PROCEDURE NewHandle*(byteCount: Size): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A122, $2E88;
- (*$END*)
- PROCEDURE NewHandleSys*(byteCount: Size): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A522, $2E88;
- (*$END*)
- PROCEDURE NewHandleClear*(byteCount: Size): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A322, $2E88;
- (*$END*)
- PROCEDURE NewHandleSysClear*(byteCount: Size): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A722, $2E88;
- (*$END*)
- PROCEDURE HandleZone*(h: Types.Handle): THz;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A126, $2E88;
- (*$END*)
- PROCEDURE RecoverHandle*(p: Types.Ptr): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A128, $2E88;
- (*$END*)
- PROCEDURE RecoverHandleSys*(p: Types.Ptr): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A528, $2E88;
- (*$END*)
- PROCEDURE NewPtr*(byteCount: Size): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A11E, $2E88;
- (*$END*)
- PROCEDURE NewPtrSys*(byteCount: Size): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A51E, $2E88;
- (*$END*)
- PROCEDURE NewPtrClear*(byteCount: Size): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A31E, $2E88;
- (*$END*)
- PROCEDURE NewPtrSysClear*(byteCount: Size): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A71E, $2E88;
- (*$END*)
- PROCEDURE PtrZone*(p: Types.Ptr): THz;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A148, $2E88;
- (*$END*)
- PROCEDURE MaxBlock*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A061, $2E80;
- (*$END*)
- PROCEDURE MaxBlockSys*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A461, $2E80;
- (*$END*)
- PROCEDURE StackSpace*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A065, $2E80;
- (*$END*)
- PROCEDURE NewEmptyHandle*(): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A166, $2E88;
- (*$END*)
- PROCEDURE NewEmptyHandleSys*(): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A566, $2E88;
- (*$END*)
- PROCEDURE HLock*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A029;
- (*$END*)
- PROCEDURE HUnlock*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A02A;
- (*$END*)
- PROCEDURE HPurge*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A049;
- (*$END*)
- PROCEDURE HNoPurge*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A04A;
- (*$END*)
- PROCEDURE HLockHi*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A064, $A029;
- (*$END*)
- PROCEDURE TempNewHandle*(logicalSize: Size; VAR resultCode: Types.OSErr): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001D, $A88F;
- (*$END*)
- PROCEDURE TempMaxMem*(VAR grow: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0015, $A88F;
- (*$END*)
- PROCEDURE TempFreeMem*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0018, $A88F;
- (*$END*)
- (* Temporary Memory routines renamed, but obsolete, in System 7.0 and later. *)
- PROCEDURE TempHLock*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001E, $A88F;
- (*$END*)
- PROCEDURE TempHUnlock*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001F, $A88F;
- (*$END*)
- PROCEDURE TempDisposeHandle*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0020, $A88F;
- (*$END*)
- PROCEDURE TempTopMem*(): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0016, $A88F;
- (*$END*)
- PROCEDURE InitApplZone*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A02C;
- (*$END*)
- PROCEDURE InitZone*(pgrowZone: GrowZoneUPP; cmoreMasters: INTEGER; limitPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; startPtr: (*ΔΔUNIVΔΔ*) Types.Ptr);
- EXTERNAL PASCAL;
- PROCEDURE SetZone*(hz: THz);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A01B;
- (*$END*)
- PROCEDURE CompactMem*(cbNeeded: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A04C, $2E80;
- (*$END*)
- PROCEDURE CompactMemSys*(cbNeeded: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A44C, $2E80;
- (*$END*)
- PROCEDURE PurgeMem*(cbNeeded: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A04D;
- (*$END*)
- PROCEDURE PurgeMemSys*(cbNeeded: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A44D;
- (*$END*)
- PROCEDURE FreeMem*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A01C, $2E80;
- (*$END*)
- PROCEDURE FreeMemSys*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A41C, $2E80;
- (*$END*)
- PROCEDURE ReserveMem*(cbNeeded: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A040;
- (*$END*)
- PROCEDURE ReserveMemSys*(cbNeeded: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A440;
- (*$END*)
- PROCEDURE MaxMem*(VAR grow: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $A11D, $2288, $2E80;
- (*$END*)
- PROCEDURE MaxMemSys*(VAR grow: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $A51D, $2288, $2E80;
- (*$END*)
- PROCEDURE SetGrowZone*(growZone: GrowZoneUPP);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A04B;
- (*$END*)
- PROCEDURE SetApplLimit*(zoneLimit: (*ΔΔUNIVΔΔ*) Types.Ptr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A02D;
- (*$END*)
- PROCEDURE MoveHHi*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A064;
- (*$END*)
- PROCEDURE DisposePtr*(p: Types.Ptr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A01F;
- (*$END*)
- PROCEDURE GetPtrSize*(p: Types.Ptr): Size;
- EXTERNAL PASCAL;
- PROCEDURE SetPtrSize*(p: Types.Ptr; newSize: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $205F, $A020;
- (*$END*)
- PROCEDURE DisposeHandle*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A023;
- (*$END*)
- PROCEDURE SetHandleSize*(h: Types.Handle; newSize: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $205F, $A024;
- (*$END*)
- PROCEDURE GetHandleSize*(h: Types.Handle): Size;
- EXTERNAL PASCAL;
- PROCEDURE InlineGetHandleSize*(h: Types.Handle): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A025, $2E80;
- (*$END*)
- PROCEDURE ReallocateHandle*(h: Types.Handle; byteCount: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $205F, $A027;
- (*$END*)
- PROCEDURE EmptyHandle*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A02B;
- (*$END*)
- PROCEDURE HSetRBit*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A067;
- (*$END*)
- PROCEDURE HClrRBit*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A068;
- (*$END*)
- PROCEDURE MoreMasters*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A036;
- (*$END*)
- PROCEDURE BlockMove*(srcPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; destPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; byteCount: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $225F, $205F, $A02E;
- (*$END*)
- PROCEDURE BlockMoveData*(srcPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; destPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; byteCount: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $225F, $205F, $A22E;
- (*$END*)
- PROCEDURE PurgeSpace*(VAR total: LONGINT; VAR contig: LONGINT);
- EXTERNAL PASCAL;
- PROCEDURE HGetState*(h: Types.Handle): Types.SInt8;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A069, $1E80;
- (*$END*)
- PROCEDURE HSetState*(h: Types.Handle; flags: Types.ByteParameter);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $101F, $205F, $A06A;
- (*$END*)
- PROCEDURE SetApplBase*(startPtr: (*ΔΔUNIVΔΔ*) Types.Ptr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A057;
- (*$END*)
- PROCEDURE MaxApplZone*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $A063;
- (*$END*)
- PROCEDURE HoldMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7000, $A05C, $3E80;
- (*$END*)
- PROCEDURE UnholdMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7001, $A05C, $3E80;
- (*$END*)
- PROCEDURE LockMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7002, $A05C, $3E80;
- (*$END*)
- PROCEDURE LockMemoryContiguous*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7004, $A05C, $3E80;
- (*$END*)
- PROCEDURE UnlockMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7003, $A05C, $3E80;
- (*$END*)
- PROCEDURE GetPhysical*(VAR addresses: LogicalToPhysicalTable; VAR physicalEntryCount: LONGINT): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE DeferUserFn*(userFunction: UserFnUPP; argument: (*ΔΔUNIVΔΔ*) Types.Ptr): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $205F, $A08F, $3E80;
- (*$END*)
- PROCEDURE DebuggerGetMax*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7000, $A08D, $2E80;
- (*$END*)
- PROCEDURE DebuggerEnter*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7001, $A08D;
- (*$END*)
- PROCEDURE DebuggerExit*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7002, $A08D;
- (*$END*)
- PROCEDURE DebuggerPoll*;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7003, $A08D;
- (*$END*)
- PROCEDURE GetPageState*(address: (*ΔΔUNIVΔΔ*) Types.Ptr): PageState;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $7004, $A08D, $3E80;
- (*$END*)
- PROCEDURE PageFaultFatal*(): BOOLEAN;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7005, $A08D, $1E80;
- (*$END*)
- PROCEDURE DebuggerLockMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7006, $A08D, $3E80;
- (*$END*)
- PROCEDURE DebuggerUnlockMemory*(address: (*ΔΔUNIVΔΔ*) Types.Ptr; count: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $7007, $A08D, $3E80;
- (*$END*)
- PROCEDURE EnterSupervisorMode*(): StatusRegisterContents;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $7008, $A08D, $3E80;
- (*$END*)
- (* StripAddress and Translate24To32 macro to nothing on PowerPC
- StripAddress is implemented as a trap in System 6 or later *)
- (*$IF SystemSixOrLater *)
- PROCEDURE StripAddress*(theAddress: (*ΔΔUNIVΔΔ*) Types.Ptr): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A055, $2E80;
- (*$END*)
- (*$ELSE*)
- PROCEDURE StripAddress*(theAddress: (*ΔΔUNIVΔΔ*) Types.Ptr): Types.Ptr;
- EXTERNAL PASCAL;
- (*$END*)
- PROCEDURE Translate24To32*(addr24: (*ΔΔUNIVΔΔ*) Types.Ptr): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A091, $2E80;
- (*$END*)
- PROCEDURE HandToHand*(VAR theHndl: Types.Handle): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE PtrToXHand*(srcPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; dstHndl: Types.Handle; size: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $225F, $205F, $A9E2, $3E80;
- (*$END*)
- PROCEDURE PtrToHand*(srcPtr: (*ΔΔUNIVΔΔ*) Types.Ptr; VAR dstHndl: Types.Handle; size: LONGINT): Types.OSErr;
- EXTERNAL PASCAL;
- PROCEDURE HandAndHand*(hand1: Types.Handle; hand2: Types.Handle): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $225F, $205F, $A9E4, $3E80;
- (*$END*)
- PROCEDURE PtrAndHand*(ptr1: (*ΔΔUNIVΔΔ*) Types.Ptr; hand2: Types.Handle; size: LONGINT): Types.OSErr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $225F, $205F, $A9EF, $3E80;
- (*$END*)
- (*$IF OLDROUTINENAMES *)
- PROCEDURE ApplicZone*(): THz;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $2EB8, $02AA;
- (*$END*)
- PROCEDURE MFTempNewHandle*(logicalSize: Size; VAR resultCode: Types.OSErr): Types.Handle;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001D, $A88F;
- (*$END*)
- PROCEDURE MFMaxMem*(VAR grow: Size): Size;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0015, $A88F;
- (*$END*)
- PROCEDURE MFFreeMem*(): LONGINT;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0018, $A88F;
- (*$END*)
- PROCEDURE MFTempHLock*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001E, $A88F;
- (*$END*)
- PROCEDURE MFTempHUnlock*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $001F, $A88F;
- (*$END*)
- PROCEDURE MFTempDisposHandle*(h: Types.Handle; VAR resultCode: Types.OSErr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0020, $A88F;
- (*$END*)
- PROCEDURE MFTopMem*(): Types.Ptr;
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $3F3C, $0016, $A88F;
- (*$END*)
- PROCEDURE ResrvMem*(cbNeeded: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $A040;
- (*$END*)
- PROCEDURE DisposPtr*(p: Types.Ptr);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A01F;
- (*$END*)
- PROCEDURE DisposHandle*(h: Types.Handle);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $205F, $A023;
- (*$END*)
- PROCEDURE ReallocHandle*(h: Types.Handle; byteCount: Size);
- (*$IF NOT GENERATINGCFM*)
- INLINE PASCAL $201F, $205F, $A027;
- (*$END*)
- (*$END*)
-
- (* $ALIGN RESET*)
- (* $POP*)
-
- END Memory.
-